csd: Manage visibility of custom titlebars
authorMatthias Clasen <mclasen@redhat.com>
Mon, 13 May 2013 00:47:55 +0000 (20:47 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 13 May 2013 01:01:59 +0000 (21:01 -0400)
We should hide custom titlebars when in fullscreen mode, just
as we do for non-custom titlebars.
https://bugzilla.gnome.org/show_bug.cgi?id=700053

gtk/gtkwindow.c

index 710497fd8a8764438acf138f5b4ea770d3e269ec..8203a9ed9ccdcd32242cfe48c0eecc833fbf29c0 100644 (file)
@@ -5019,16 +5019,27 @@ update_window_buttons (GtkWindow *window)
   GtkWindowPrivate *priv = window->priv;
   gboolean maximized;
 
-  if (priv->custom_title)
+  if (priv->title_box == NULL)
     return;
 
   maximized = gtk_window_get_maximized (window);
 
+  if (priv->fullscreen ||
+      (maximized && priv->hide_titlebar_when_maximized))
+    {
+      gtk_widget_hide (priv->title_box);
+      return;
+    }
+  else
+    {
+      gtk_widget_show (priv->title_box);
+    }
+
+  if (priv->custom_title)
+    return;
+
   if (priv->decorated &&
-      priv->client_decorated &&
-      !priv->fullscreen &&
-      !(maximized && priv->hide_titlebar_when_maximized) &&
-      priv->title_box != NULL)
+      priv->client_decorated)
     {
       gchar *layout_desc;
       gchar **tokens, **t;
@@ -5150,13 +5161,6 @@ update_window_buttons (GtkWindow *window)
           g_strfreev (tokens);
         }
       g_free (layout_desc);
-
-      gtk_widget_show (priv->title_box);
-    }
-  else
-    {
-      if (priv->title_box != NULL)
-        gtk_widget_hide (priv->title_box);
     }
 }